  // 函数的副作用
  let cc = 3;
  let fun = () => cc = cc * 10;
  fun();
  console.log(cc);
// 没有副作用的函数是不可能的,尽是减少函数的副作用
// 把不纯的代码提取出来,不纯的代码远离核心代码
// 保证函数无副作用特性
// 1. 函数入口使用参数运算,而不修改它.
// 2. 函数内不修改函数外的变量.
// 3. 运算结果通过函数返回给外部. 